iT邦幫忙

2026 iThome 鐵人賽

DAY 4
0
自我挑戰組

Medical Data Cleaner系列 第 21 篇

改善資料品質明細的呈現方式

  • 分享至 

  • xImage
  •  

只有統計數字還不夠。如果使用者想知道哪些資料有問題、問題出在哪個欄位,以及應該如何處理,就需要進一步查看詳細的檢查結果。
因此,今天的目標是改善資料品質問題明細的呈現方式,讓每個問題都能以獨立的區塊顯示,並利用不同的顏色區分問題類型。
一、建立問題明細的CSS樣式
首先,使用 CSS 設定問題明細的外觀,包含背景、邊框、間距與圓角,讓問題清單更容易閱讀。

.issue-list {
    background: white;
    border: 1px solid #dce5e2;
    border-radius: 12px;
    padding: 16px;
    margin: 16px 0 28px;
}
.issue-item {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 12px 14px;
    margin-bottom: 8px;
    background: #f8fbfa;
    border-radius: 6px;
    line-height: 1.6;
}

其中,.issue-list是整個問題清單的容器,而.issue-item則代表單一問題。透過display: flex,可以讓問題類型標籤與詳細內容排列在同一列。
二、使用顏色區分不同問題類型

.issue-missing {
    border-left-color: #b87a32;
}
.issue-format {
    border-left-color: #b65e5e;
}
.issue-range {
    border-left-color: #a75b72;
}
.issue-duplicate {
    border-left-color: #7d6bb1;
}
.issue-consistency {
    border-left-color: #4c8b80;
}

這樣可以讓使用者不必逐字閱讀所有內容,就能透過顏色快速區分缺失值、格式錯誤、數值異常、重複資料與一致性問題。
三、使用PHP輸出問題明細
以下以數值異常為例:

echo '<div class="issue-item issue-range">';
echo '<span class="issue-tag">數值異常</span>';
echo '<span class="issue-detail">'
    . htmlspecialchars($row[0], ENT_QUOTES, 'UTF-8')
    . ' → age = '
    . htmlspecialchars($row[1], ENT_QUOTES, 'UTF-8')
    . ' → 建議處理:標記為 Unknown';
echo '</span></div>';

這段程式碼會顯示問題類型、資料識別碼、異常欄位與處理建議。
另外,使用htmlspecialchars()對資料內容進行HTML特殊字元轉換,降低資料被瀏覽器當成HTML標籤解讀的風險。


上一篇
建立資料品質統計卡片
下一篇
改善清理前後的資料預覽介面
系列文
Medical Data Cleaner 共 26 篇
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言